Cloud Development Kit for Kubernetes
cdk8s is an open-source software development framework for defining Kubernetes
applications and reusable abstractions using familiar programming languages
and rich object-oriented APIs. cdk8s apps synthesize into standard
Kubernetes manifests which can be applied to any Kubernetes cluster.
Why should you use CDK for Kubernetes?
Harness the power of code
Utilize code completion, loops, conditionals and testing for manifests, in your preferred programming language!
Simplify application workflows
Use the same programming language to build your application and its configuration
Define best practices
Deliver faster by composing and sharing reusable components through code libraries
Features
Works with Kubernetes everywhere
You can use cdk8s to define applications for any Kubernetes cluster
running anywhere, including any cloud or on-premises. cdk8s runs locally
in your development environment and produces standard Kubernetes YAML
that can be applied to any cluster.
Language support
cdk8s lets you define applications using Typescript, JavaScript, Python,
Java, and Go. Support for more languages is coming soon.
Supports core Kubernetes objects and custom resources
You can import objects from any Kubernetes API version and custom
resource definitions to use with cdk8s. This makes it easy to use cdk8s
to easily write entire Kubernetes applications and keep them up to date
as applications change.
Deploy through GitOps
cdk8s works great with a GitOps workflow, making it easy to see changes
as you modify your configuration and between API versions. Simply use
the cdk8s to synthesize new YAML configuration files and commit them to
your git repo.
Community-driven
We are building cdk8s for any developer who uses Kubernetes to define
their applications. We encourage contributions of any type, from fixing
typos to building new features.
Go from code to config
Easily define Kubernetes applications for any cluster
Get started